﻿#region Using

using System;

using Common.Base;

#endregion

namespace GameLogic.External
{
    public interface IGame
    {
        event EventHandler<PlayerEventArgs> OnGameOver;

        event EventHandler<PlayerEventArgs> OnPlayerLost;

        event EventHandler OnPaused;

        event EventHandler OnResumed;

        event EventHandler AfterUpdate;

        Result Execute(ICommand cmd);

        void Resume();

        void Start();

        void Pause();

        void Update();

        void ManualPlayerLoose(Identifiable player);
    }
}